Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Restructure netmap code into generic code and OS-specific support code.
Port OS-specific support code to Linux.
Linux port tested and seems to work well on Ubuntu 23.10 with netmap kernel modules and drivers added, on a arm64 VM with vmxnet3 NIC. Results for virtual e1000 and e1000e NICs varied due to what I root caused to issues with netmap patches for Linux drivers, not with code in ZMap. Untested on bare metal or fast link speeds so far.
Tested to build and run on FreeBSD 14.0, Ubuntu 23.10 and macOS Sonoma, without and with
-DWITH_NETMAP
where applicable.